import collections


# 辅助函数：从字符串s中删除一个指定数字digit_char，并返回所有可能的、非空的结果字符串
def get_all_removals(s, digit_char):
    """
    返回一个列表，包含所有通过从s中删除一个digit_char形成的唯一字符串。
    确保结果字符串非空。
    """
    results = []
    for i in range(len(s)):
        if s[i] == digit_char:
            temp_s = s[:i] + s[i + 1:]
            # 规则: "数字没有被完全删除" - 确保字符串非空
            if temp_s != "":
                results.append(temp_s)
    # 使用set去重，因为从不同位置删除相同的数字可能得到相同的结果 (例如 "11" 删除 '1' 两次都得到 "1")
    return list(set(results))


# 解决单个测试用例的主函数
def solve_single_case():
    fractions_input = input().split()
    start_fraction_str = fractions_input[0]
    target_fraction_str = fractions_input[1]

    start_num_str, start_den_str = start_fraction_str.split('/')
    target_num_str, target_den_str = target_fraction_str.split('/')

    # BFS 初始化
    q = collections.deque()
    visited = set()

    # 初始状态加入队列和访问集合
    q.append((start_num_str, start_den_str))
    visited.add((start_num_str, start_den_str))

    while q:
        curr_num, curr_den = q.popleft()

        # 如果当前状态与目标分数匹配，则找到路径
        if curr_num == target_num_str and curr_den == target_den_str:
            return "Yes"

        # 探索下一组可能的状态，通过“奇妙约分”操作
        # 遍历所有可能的数字 (0-9) 进行删除
        for digit_char_val in range(10):
            digit_char = str(digit_char_val)

            # 获取删除 digit_char 后所有可能的新分子
            possible_num_results = get_all_removals(curr_num, digit_char)
            # 获取删除 digit_char 后所有可能的新分母
            possible_den_results = get_all_removals(curr_den, digit_char)

            # 必须在分子和分母中都能找到并删除该数字
            if possible_num_results and possible_den_results:
                for next_num in possible_num_results:
                    for next_den in possible_den_results:
                        # 规则: "分母不是全为0即可" - 分母不能是 "0"
                        if next_den == "0":
                            continue

                        next_state = (next_num, next_den)
                        if next_state not in visited:
                            visited.add(next_state)
                            q.append(next_state)

    # 如果队列为空但未找到目标，则表示不存在路径
    return "No"


# 读取测试用例的数量
T = int(input())
output_results = []
for _ in range(T):
    output_results.append(solve_single_case())

# 打印所有结果
for res in output_results:
    print(res)

